Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling
Over Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling
- Publicatiedatum:
- 15-07-2026
- Inwerkingtreding:
- 16-07-2026
20.4 Solvabiliteit - wat zijn de reserves?
Concepten
Relaties
Eigenschappen
SPARQL query
Code gekopieerd
...Kopieer naar klembord
1# Indicator: Zorgkantoren 20.4.0 2# Parameters: ?peildatum 3# Ontologie: versie 3.0.0 of nieuwer 4 5PREFIX onz-fin: <http://purl.org/ozo/onz-fin#> 6prefix onz-zorg: <http://purl.org/ozo/onz-zorg#> 7PREFIX onz-g: <http://purl.org/ozo/onz-g#> 8PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 9 10SELECT ?Kental ?Waarde 11WHERE { 12 { 13 SELECT (SUM(IF(?jaarrekeningpost = "D Reserves", ?bedrag, 0)) AS ?reserves) 14 WHERE { 15 { 16 SELECT ?jaarrekeningpost (SUM(?bedrag_rubriek) AS ?bedrag) 17 WHERE { 18 # BIND("2024-12-31"^^xsd:date AS ?peildatum) 19 BIND(?peildatum AS ?peildatum_argument) 20 { 21 SELECT # totaal per rubriek 22 ?rubriek ?categorie 23 (SUM(?geld_bedrag_post) + SUM(?saldo_waarde)/COUNT(?saldo_waarde) AS ?bedrag_rubriek) 24 WHERE { 25 { 26 SELECT # bereken het meest recente saldo per rubriek, 0 indien geen saldo 27 ?rubriek ?categorie 28 (IF(BOUND(?saldo_bedrag), ?saldo_bedrag, 0) AS ?saldo_waarde) 29 ?peildatum_argument 30 (IF(BOUND(?saldo_datum), ?saldo_datum, ?unbound) AS ?begin_datum) 31 ?saldo_datum ?saldo 32 WHERE { 33 # BIND("2024-12-31"^^xsd:date AS ?peildatum) 34 BIND(?peildatum as ?peildatum_argument) 35 36 { 37 # Prismant: prefix-mapping, want Prismant consolideert niet dus we willen onderliggende rubrieken 38 { 39 ?rubriek a onz-fin:Grootboekrubriek . 40 } 41 UNION 42 { 43 ?rubriek a onz-fin:Grootboekrekening . 44 } 45 BIND(STRAFTER(STR(?rubriek), STR(onz-fin:)) AS ?rubriekCode) 46 47 VALUES (?prismantPrefix ?categorie) { 48 ("05413" "D.IV") 49 ("05311" "D.V") 50 ("05342" "D.V") 51 ("05423" "D.V") 52 ("05323" "D.VI") 53 ("0539" "D.VII") 54 ("05493" "D.VII") 55 ("05915" "D.VII") 56 ("091" "D.VIII") 57 } 58 FILTER(STRSTARTS(?rubriekCode, ?prismantPrefix)) 59 } 60 UNION 61 { 62 # RGS: exacte mapping, want RGS consolideert zelf onderliggende rubrieken 63 VALUES (?rubriekCode ?categorie) { 64 ("BEivHer" "D.III") 65 ("BEivWer" "D.IV") 66 ("BEivStr" "D.IV") 67 ("BEivBer" "D.V") 68 ("BEivBef" "D.VI") 69 ("BEivOvr" "D.VII") 70 ("BEivOre" "D.VIII") 71 } 72 73 BIND(IRI(CONCAT(STR(onz-fin:), ?rubriekCode)) AS ?rubriek) 74 { 75 ?rubriek a onz-fin:Grootboekrubriek . 76 } 77 UNION 78 { 79 ?rubriek a onz-fin:Grootboekrekening . 80 } 81 } 82 83 OPTIONAL { 84 ?rubriek onz-g:isAbout ?saldo . 85 ?saldo 86 a onz-fin:EindSaldo ; 87 onz-fin:heeftGeldBedrag ?saldo_bedrag ; 88 onz-g:hasDate ?saldo_datum . 89 90 FILTER (?saldo_datum <= ?peildatum_argument) 91 92 FILTER NOT EXISTS { 93 ?rubriek onz-g:isAbout ?saldo2 . 94 ?saldo2 95 a onz-fin:EindSaldo ; 96 onz-g:hasDate ?saldo_datum2 . 97 98 FILTER(?saldo2 != ?saldo) 99 FILTER (?saldo_datum2 <= ?peildatum_argument) 100 FILTER ( 101 ?saldo_datum2 > ?saldo_datum 102 || ( 103 ?saldo_datum2 = ?saldo_datum 104 && STR(?saldo2) > STR(?saldo) 105 ) 106 ) 107 } 108 } 109 } 110 } 111 OPTIONAL { 112 ?grootboek_post 113 a onz-fin:Grootboekpost ; 114 onz-g:partOf ?rubriek ; 115 onz-g:hasDate ?datum ; 116 onz-fin:heeftGeldBedrag ?geld_bedrag_temp . 117 # Behoud de grootboek post alleen voor de meest specifieke rubriek, 118 # om dubbeltelling bij meerdere rubrieken te voorkomen 119 FILTER NOT EXISTS { 120 ?grootboek_post onz-g:partOf ?specifiekereRubriek . 121 ?specifiekereRubriek onz-g:partOf+ ?rubriek . 122 } 123 FILTER (?datum <= ?peildatum_argument && (?datum > ?begin_datum || !BOUND(?begin_datum))) 124 } 125 BIND(IF(BOUND(?geld_bedrag_temp), ?geld_bedrag_temp, 0) AS ?geld_bedrag_post) 126 127 } GROUP BY ?rubriek ?categorie 128 } 129 130 VALUES (?categorie ?jaarrekeningpost){ 131 ("D.III" "D Reserves") 132 ("D.IV" "D Reserves") 133 ("D.V" "D Reserves") 134 ("D.VI" "D Reserves") 135 ("D.VII" "D Reserves") 136 ("D.VIII" "D Reserves") 137 } 138 } GROUP BY ?jaarrekeningpost 139 } 140 } 141 } 142 143 BIND("Reserves" AS ?Kental) 144 BIND( 145 ROUND(xsd:decimal(?reserves)) 146 AS ?Waarde 147) 148} 149ORDER BY ?Kental 150